package com.qf.proxy;

import com.qf.service.FangDongService;
import com.qf.service.FangDongServiceImpl;

/**
 * 代理类, 模式中介
 * 静态代理:  因为代码也算是硬编码, 写死在代码中
 *          有多少房东, 也就需要有多少代理类,
 *          房东相当于service, 一个项目中可能有很多, 那么就需要很多的代理类,比较臃肿
 *          可以用动态代理来解决.
 * @author
 */
public class ZhongJieProxy implements FangDongService {

    private FangDongService fangDongService = new FangDongServiceImpl();

    /**
     * 中介帮助房东出租房屋
     */
    @Override
    public void zuFang() {
        //添加辅助功能, 例如: 打印日志, 事务功能
        System.out.println("=======发布租房信息=======");
        System.out.println("=======带租客看房=======");

        //执行核心业务, 让房东签合同, 收房租
        fangDongService.zuFang();

        System.out.println("======维护房屋========");
    }

}
